package dbexp.model.db;

import java.util.HashMap;
import java.util.Map;

import dbexp.model.DbObject;

/**
 * Klasa Singelton do przechowywania kopii obiektów
 * 
 * @author Michał Skrzyński
 */
public class BackupObject {
	/**
	 * Zmienna instancji klasy
	 */
	private static BackupObject instance = new BackupObject();
	/**
	 * Mapa obiektów
	 */
	private Map<String, DbObject> map = new HashMap<String, DbObject>();

	/**
	 * Konstruktor prywatny do klasy Singelton
	 */
	private BackupObject() {

	}

	/**
	 * Pobiera instance klasy
	 * 
	 * @return instancja
	 */
	public static BackupObject getInstance() {
		return instance;
	}

	/**
	 * Przechowuje obiekt dazy jako kopia zapasowa
	 * 
	 * @param key
	 *            nazwa obiektu
	 * @param object
	 *            obiekt do przechowania
	 */
	public void put(String key, DbObject object) {
		map.put(key, object);
	}

	/**
	 * Pobiera obiekt z kopii
	 * 
	 * @param key
	 *            nazwa obiektu
	 * @return obiekt z kopii
	 */
	public DbObject get(String key) {
		return map.get(key);
	}
}
